package com.jingdianjichi.auth.common.entity;

import lombok.Data;

import java.io.Serializable;
import java.util.Collections;
import java.util.List;
@Data
public class PageResult<T> implements Serializable {
    private Integer pageNo=1;//当前页数
    private Integer pageSize=20;//每页显示数据条数
    private Integer total=0;//总数据条数
    private Integer totalPages=0;//总页面条数
    private List<T> result= Collections.emptyList();//数据
    private Integer start=1;//起始位置
    private Integer end=0;//结束位置
    public void setRecords(List<T> result) {
        this.result = result;
        if (result != null && result.size() > 0) {
            setTotal(result.size());
        }
    }

    public void setTotal(Integer total) {
        this.total = total;
        if (this.pageSize > 0) {
            this.totalPages = (total / this.pageSize) + (total % this.pageSize == 0 ? 0 : 1);
        } else {
            this.totalPages = 0;
        }
        this.start = (this.pageSize > 0 ? (this.pageNo - 1) * this.pageSize : 0) + 1;
        this.end = (this.start - 1 + this.pageSize * (this.pageNo > 0 ? 1 : 0));
    }

        public void setPageSize(Integer pageSize){
            this.pageSize=pageSize;
        }
        public void setPageNo(Integer pageNo) {
            this.pageNo = pageNo;
        }


}
